 #include <iostream>
#include <string>
#include <vector>
#include <algorithm>

bool is_cyrillic_uppercase(char c) {
    return 'А' <= c && c <= 'Я';
}

std::string analyze_words(std::string input_str) {
    std::vector<std::string> words;
    std::string word;
    for (char c : input_str) {
        if (c == ' ') {
            if (!word.empty()) {
                words.push_back(word);
                word.clear();
            }
        } else {
            word += c;
        }
    }
    if (!word.empty()) {
        words.push_back(word);
    }

    int num_words = words.size();
    int upper_cyrillic_count = 0;
    int latin_symbol_count = 0;
    int short_words_count = 0;
    int hyphen_count = 0;
    std::string longest_word;
    int longest_word_length = 0;

    for (const std::string& word : words) {
        if (is_cyrillic_uppercase(word[0])) {
            upper_cyrillic_count++;
        }
        bool has_latin_symbol = false;
        for (char c : word) {
            if (isalpha(c) && isascii(c)) {
                has_latin_symbol = true;
                break;
            }
        }
        if (has_latin_symbol) {
            latin_symbol_count++;
        }
        if (word.length() <= 3) {
            short_words_count++;
        }
        if (word.find('-') != std::string::npos) {
            hyphen_count++;
        }
        if (word.length() > longest_word_length) {
            longest_word = word;
            longest_word_length = word.length();
        }
    }

    return "Кол-во слов: " + std::to_string(num_words) + "\n"
        + "Кол-во слов с заглавной кириллической буквы: " + std::to_string(upper_cyrillic_count) + "\n"
        + "Кол-во слов содержащих латинский символ: " + std::to_string(latin_symbol_count) + "\n"
        + "Кол-во слов не превышающих 3 символа: " + std::to_string(short_words_count) + "\n"
        + "Кол-во слов в составе которых имеется дефис: " + std::to_string(hyphen_count) + "\n"
        + "Самое длинное слово: " + longest_word + "\n"
        + "Длина слова: " + std::to_string(longest_word_length);
}

int main() {
    std::string input_str;
    std::cout << "Введите несколько слов, разделенных пробелом: ";
    std::getline(std::cin, input_str);

    std::string result = analyze_words(input_str);
    std::cout << result << std::endl;

    return 0;
}

